home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / Apps / ScreenSavers / BackSpaceViews / StarShipView.BackModule / Celestial.bproj / Celestial.h < prev    next >
Encoding:
Text File  |  1995-06-12  |  1.8 KB  |  66 lines

  1. #import <appkit/appkit.h>
  2. #import "Thinker.h"
  3. #import "Body.h"
  4. #import "StarShipProtocol.h"
  5. #import "CelestialCommon.h"
  6.  
  7.  
  8. @interface Celestial:Object
  9. {
  10.     
  11.     id starsObject;
  12.     id tiffManagerObject;
  13.     List *bodyList;
  14.     Sound *pwrDownSnd;
  15.     Sound  *pwrUpSnd;
  16.     
  17.     
  18.     BOOL                starsStopping;    //if starsObject has been told to stop
  19.     BOOL                starsStopped;
  20.     BOOL                 soundEnabled;
  21.     short                totalBodies;        //how many different ones
  22.     short                animBuilt;            //how many actually built
  23.     short                currentBodyIndex;
  24.     short                cycleStartIndex;
  25.     short                bodyCount;
  26.     short                currentCycle;
  27.     
  28.     short                bodiesDone;            //how many bodies have been done
  29.      int                    startInterval;        //how often to start
  30.     BOOL                okToDoAnim;            // if tiff images are all loaded
  31.     BOOL                tiffsNeedBuilding;
  32.     Body                *currentBody;
  33.  
  34.     int                 nextStartTime;        //when to create next body
  35.     float                objectSpeed;        //when creating next body
  36.     int                    cycles;                //number of complete cycles done
  37.                                             // of total number of bodies
  38.     NXRect                bounds;
  39.     const char            *moduleDir;
  40.     Storage                *tiffStorage;
  41.     Storage                *avoidStorage;
  42.     BOOL                firstState;
  43.     int                    tiffStorageIndex;    // points to next image to create
  44.     int                    animationIndex;        // keeps track where you are
  45.                                             // in the animation creation
  46.     int isMult;                                //current body is multiple
  47.      float lastTheta[4];                        //if doing mult then make sure
  48.                                             // new theta isn't near old theta
  49.     int        multDelay;                        // delay between mult items
  50.     short    currentMultTotal;                // total of mult items to process
  51. }
  52.  
  53. - init;
  54. - windowSizeChanged;
  55. - setFirstState;
  56. - (Body *)createBody:(int)index;
  57. - setStartInterval: (Slider *)sender;
  58. - setObjectSpeed: (Slider *)sender;
  59. - setNextStartTime;
  60. - setBoundsRect:(NXRect *)r;
  61. - setNextStartTime;
  62. - setStarsOutlet:(id)starsOutlet;
  63. - changeBodyList:(int)index;
  64. - (float)genUniqueTheta;
  65. @end
  66.